(餓了餓了)
我們繼續來介紹一些特殊且實用的Model欄位類型吧!
EmailField:能幫忙檢查輸入的Email是否合法的欄位類型,輸入類型是字串(Char)
。
FileField:能上傳檔案的欄位類型,定義欄位時必須傳入參數upload_to
來給伺服器儲存上傳檔案的路徑,路徑須包含strftime
格式,例如:
<變數> = models.FileField(upload_to ='uploads/<%年>/<%月>/<%日>/')
upload = models.FileField(upload_to ='uploads/% Y/% m/% d/')
(有關strftime
的用法可以到這裡了解更多喔)
ImageField:與FileField類似,會驗證上傳物是否是合法的圖片格式,能帶的參數有兩種,分別是height_field
跟width_field
,若有提供兩種參數,所上傳的圖片將會按照參數的長寬格式來儲存圖片(需安裝Python圖像庫 例如:Pillow)。
PhoneNumberField:美式電話號碼驗證的欄位類型(例如:123-456-7890)
IPAddressField:能儲存IP位址(例如:"192.168.1.123")的欄位類型,輸入類型是字串(Char)
。
URLField:用來儲存URL的欄位類型。
JSON Field:能存JSON編碼資料的欄位類型。
XMLField:能存XML合法驗證的TextField欄位類型。
大概就這些特殊且蠻實用的資料欄位類型,有時候對於輸入的資料類型不確定時可使用上回的字串欄位類型(CharField),輸入資料只有數字則使用整數欄位類型(IntegerField)等,都是相對萬用的欄位類型,
若有特殊需求則可用本次介紹的這些類型。
先到這裡,我們下回再見,大家掰掰~
更多欄位類型介紹可以到Geeksforgeeks來看看。
圖片來源:北藝中心